MongoDB缓存技术总结

MongoDB简介

MongoDB 是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。

  • MongoDB是一个基于分布式文件存储的数据库
  • MongoDB是介于NoSQL和关系型数据库之间的一款产品
  • MongdoDB是基于C++语言编写
  • MongoDB具有查询语言、索引、Key-Value存储结构
  • MongoDB存储数据是以BSON类型(二进制JSON)

Redis(读写快、做缓存)—>MongoDB(数据量大、查询统计、缺乏事务支持)—>Oracle(数据量大、查询统计方便、事务强)

MongoDB适用于单表数据操作、完整性要求不高的系统使用

MoongoDB特点是高性能、易部署、易使用,存储数据非常方便。

MongoDB应用

Oracle: 用户空间–>表–>记录 
MongoDB: 库–>集合–>JSON对象(记录)

  • 查看
    show dbs //查看有哪些库
    show collections //查看库中有哪些集合
  • 库操作
    use 库名  //使用某个库,进入某个库,创建一个库
    库名.dropDatabase() //删除
  • 集合操作

    对集合进行增删改差操作。

     db.集合名.insert(xx) //创建集合插入记录
     db.集合名.drop()  //删除集合
     db.集合名.find()  //查询
     db.集合名.update() //更新
     db.集合名.remove() //删除

 

  • 添加操作
        //插入单个记录
        db.dept.insert({"deptno":10,"dname":"java"})  
        //插入多个记录
        db.dept.insert([{"deptno":10,"dname":"java"},{"deptno":20,"dname":"javaee"}])  

 

  • 查询操作
        //查询所有记录
        db.dept.find()
        //查询deptno=10的记录
        db.dept.find({"deptno":10})
        //查询deptno>20的记录 (其他$gte、$lt、$lte、$ne)
        db.dept.find({"deptno":{$gt:20}})
        //查询dname以j字母开始的记录
        db.dept.find({"dname":/^j/})
        //查询dname中包含a的记录
        db.dept.find({"dname":/a/})

 

  • 删除操作
        //删除deptno=10的记录
        db.dept.remove({"deptno":10})
        //删除所有记录
        db.dept.remove({})

 

  • 更新操作
        //全部更新,会将整个json对象盖掉
        db.dept.update({"deptno":30},{"phone":"1354444444"})
        //部分更新,修改某个属性值
        db.dept.update({"deptno":30},{$set:{"phone":"1354444444"}})

 

  • 统计操作
        //统计总记录数
        db.dept.count()
        //统计符合条件的记录数
        db.dept.count({"dname":"java"})

 

posted @ 2018-02-24 09:02  门罗的魔术师  阅读(7508)  评论(0编辑  收藏  举报